﻿// 3780. 构造数组.cpp : 此文件包含 "main" 函数。程序执行将在此处开始并结束。
//
/*
https://www.acwing.com/problem/content/3783/

给定一个长度为 n
 的整数数组 m1,m2,…,mn
。

现在，请你构造一个数组 a1,a2,…,an
。

对于构造的数组，有以下三点要求：

∀i∈[1,n]
，1≤ai≤mi
 成立。
∀i∈[1,n]
, 不存在数对 j,k
 同时满足 j<i<k
 且 aj>ai<ak
。
数组中所有元素之和尽可能大。
请输出任意合理方案。

输入格式
第一行包含整数 n
。

第二行包含 n
 个整数 m1,m2,…,mn
。

输出格式
输出 n
 个整数，表示你构造出的数组 a1,a2,…,an
。

如果答案不唯一， 输出任意合理方案均可。

数据范围
前三个测试点满足 1≤n≤10
。
全部测试点满足 1≤n≤5×105
，1≤mi≤109
。

输入样例1：
5
1 2 3 2 1
输出样例1：
1 2 3 2 1
输入样例2：
3
10 6 8
输出样例2：
10 6 6
*/
#include <iostream>

int main()
{
    std::cout << "Hello World!\n";
}

 